package com.ruoyi.blindBoxManage.mapper;

import com.ruoyi.blindBoxManage.domain.ProductType;
import org.apache.ibatis.annotations.Param;
import org.apache.ibatis.annotations.Select;

import java.util.List;

/**
 * 商品等级配置Mapper接口
 * 
 * @author ruoyi
 * @date 2025-08-12
 */
public interface ProductTypeMapper 
{
    /**
     * 查询商品等级配置
     * 
     * @param id 商品等级配置主键
     * @return 商品等级配置
     */
    public ProductType selectProductTypeById(Integer id);

    /**
     * 查询商品等级配置列表
     * 
     * @param productType 商品等级配置
     * @return 商品等级配置集合
     */
    public List<ProductType> selectProductTypeList(ProductType productType);

    /**
     * 新增商品等级配置
     * 
     * @param productType 商品等级配置
     * @return 结果
     */
    public int insertProductType(ProductType productType);

    /**
     * 修改商品等级配置
     * 
     * @param productType 商品等级配置
     * @return 结果
     */
    public int updateProductType(ProductType productType);

    /**
     * 删除商品等级配置
     * 
     * @param id 商品等级配置主键
     * @return 结果
     */
    public int deleteProductTypeById(Integer id);

    /**
     * 批量删除商品等级配置
     * 
     * @param ids 需要删除的数据主键集合
     * @return 结果
     */
    public int deleteProductTypeByIds(Integer[] ids);

    @Select("select id from t_product_type where name = #{name}")
    Integer selectIdByName(@Param("name") String name);

    @Select("select name from t_product_type where id = #{id}")
    String selectNameById(@Param("id") Integer id);
}
